home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 February: Tool Chest / Apple Developer CD Series Tool Chest February 1996 (Apple Computer)(1996).iso / What's New? / Development Kits / ColorSync™ 2.0.1 GM / Interfaces / CIncludes / CMAcceleration.h next >
Encoding:
C/C++ Source or Header  |  1995-12-12  |  4.8 KB  |  151 lines  |  [TEXT/MPS ]

  1. /*
  2.      File:        CMAcceleration.h
  3.  
  4.      Contains:    ColorSync 2.0 Acceleration Component Interfaces
  5.  
  6.      Version:    Technology:    ColorSync 2.0
  7.                  Release:    2.0f3
  8.  
  9.      Copyright:    © 1984-1994 by Apple Computer, Inc.
  10.                  All rights reserved.
  11.  
  12.      Bugs?:        If you find a problem with this file, send the file and version
  13.                  information (from above) and the problem description to:
  14.  
  15.                      Internet:    apple.bugs@applelink.apple.com
  16.                      AppleLink:    APPLE.BUGS
  17.  
  18. */
  19.  
  20. #ifndef __CMACCELERATION__
  21. #define __CMACCELERATION__
  22.  
  23.  
  24. #ifndef __MEMORY__
  25. #include <Memory.h>
  26. #endif
  27. /*    #include <Types.h>                                            */
  28. /*        #include <ConditionalMacros.h>                            */
  29. /*    #include <MixedMode.h>                                        */
  30.  
  31. #ifndef __COMPONENTS__
  32. #include <Components.h>
  33. #endif
  34.  
  35. #ifndef __CMAPPLICATION__
  36. #include <CMApplication.h>
  37. #endif
  38. /*    #include <Quickdraw.h>                                        */
  39. /*        #include <QuickdrawText.h>                                */
  40. /*            #include <ScriptLayout.h>                            */
  41. /*    #include <Files.h>                                            */
  42. /*        #include <OSUtils.h>                                    */
  43. /*        #include <Finder.h>                                        */
  44. /*    #include <Printing.h>                                        */
  45. /*        #include <Errors.h>                                        */
  46. /*        #include <Dialogs.h>                                    */
  47. /*            #include <Windows.h>                                */
  48. /*                #include <Events.h>                                */
  49. /*                #include <Controls.h>                            */
  50. /*                    #include <Collections.h>                    */
  51. /*                    #include <Appearance.h>                        */
  52. /*                    #include <TextObjects.h>                    */
  53. /*                        #include <Unicode.h>                    */
  54. /*                    #include <Menus.h>                            */
  55. /*                #include <AppleEvents.h>                        */
  56. /*                    #include <EPPC.h>                            */
  57. /*                        #include <AppleTalk.h>                    */
  58. /*                        #include <PPCToolbox.h>                    */
  59. /*                        #include <Processes.h>                    */
  60. /*                    #include <Notification.h>                    */
  61. /*                        #include <Kernel.h>                        */
  62. /*                            #include <MachineExceptions.h>        */
  63. /*                            #include <Timing.h>                    */
  64. /*                #include <Drag.h>                                */
  65. /*                    #include <TextEdit.h>                        */
  66. /*    #include <CMICCProfile.h>                                    */
  67.  
  68. #ifdef __cplusplus
  69. extern "C" {
  70. #endif
  71.  
  72. #if GENERATINGPOWERPC
  73. #pragma options align=mac68k
  74. #endif
  75.  
  76. #ifdef __CFM68K__
  77. #pragma import on
  78. #endif
  79.  
  80.  
  81. enum {
  82.     cmAccelerationInterfaceVersion = 1
  83. };
  84.  
  85. /*–––––––––––––––––––––––––––––––––––––– Component Type*/
  86. enum {
  87.     cmAccelerationComponentType    = 'csac'
  88. };
  89.  
  90. /*–––––––––––––––––––––––––––––––––––––– Required Component function selectors*/
  91. enum {
  92.     cmLoadTables                = 0,
  93.     cmCalculateData                = 1
  94. };
  95.  
  96. /*–––––––––––––––––––––––––––––––––––––– table data for acceleration component*/
  97. struct CMAccelerationTableData {
  98.     long                            inputLutEntryCount;            /* count of entries for input lut for one dimension*/
  99.     long                            inputLutWordSize;            /* count of bits of each entry ( e.g. 16 for WORD )*/
  100.     Handle                            inputLut;                    /* handle to input lut*/
  101.     long                            outputLutEntryCount;        /* count of entries for output lut for one dimension    */
  102.     long                            outputLutWordSize;            /* count of bits of each entry ( e.g. 8 for BYTE )*/
  103.     Handle                            outputLut;                    /* handle to output lut*/
  104.     long                            colorLutInDim;                /* input dimension  ( e.g. 3 for LAB ; 4 for CMYK )*/
  105.     long                            colorLutOutDim;                /* output dimension ( e.g. 3 for LAB ; 4 for CMYK )*/
  106.     long                            colorLutGridPoints;            /* count of gridpoints for color lut ( for one Dimension )    */
  107.     long                            colorLutWordSize;            /* count of bits of each entry ( e.g. 8 for BYTE )*/
  108.     Handle                            colorLut;                    /* handle to color lut*/
  109.     CMBitmapColorSpace                inputColorSpace;            /* packing info for input*/
  110.     CMBitmapColorSpace                outputColorSpace;            /* packing info for output*/
  111.     void                            *userData;
  112.     unsigned long                    reserved1;
  113.     unsigned long                    reserved2;
  114.     unsigned long                    reserved3;
  115.     unsigned long                    reserved4;
  116.     unsigned long                    reserved5;
  117. };
  118. typedef struct CMAccelerationTableData CMAccelerationTableData, *CMAccelerationTableDataPtr, **CMAccelerationTableDataHdl;
  119.  
  120. /*–––––––––––––––––––––––––––––––––––––– calc data for acceleration component*/
  121. struct CMAccelerationCalcData {
  122.     long                            pixelCount;                    /* count of input pixels*/
  123.     Ptr                                inputData;                    /* input array*/
  124.     Ptr                                outputData;                    /* output array*/
  125.     unsigned long                    reserved1;
  126.     unsigned long                    reserved2;
  127. };
  128. typedef struct CMAccelerationCalcData CMAccelerationCalcData, *CMAccelerationCalcDataPtr, **CMAccelerationCalcDataHdl;
  129.  
  130. /*————————————————————————————————————————————————————————————————————————————————————————————————*/
  131. /*                A c c e l e r a t i o n   C o m p o n e n t   I n t e r f a c e s*/
  132. /*————————————————————————————————————————————————————————————————————————————————————————————————*/
  133. extern pascal CMError CMAccelerationLoadTables(ComponentInstance CMSession, CMAccelerationTableDataPtr tableData)
  134.  FIVEWORDINLINE(0x2F3C, 0x0004, 0x0000, 0x7000, 0xA82A);
  135. extern pascal CMError CMAccelerationCalculateData(ComponentInstance CMSession, CMAccelerationCalcDataPtr calcData)
  136.  FIVEWORDINLINE(0x2F3C, 0x0004, 0x0001, 0x7000, 0xA82A);
  137.  
  138. #ifdef __CFM68K__
  139. #pragma import off
  140. #endif
  141.  
  142. #if GENERATINGPOWERPC
  143. #pragma options align=reset
  144. #endif
  145.  
  146. #ifdef __cplusplus
  147. }
  148. #endif
  149.  
  150. #endif /* __CMACCELERATION__ */
  151.